-*- mode: org; coding: utf-8; fill-column: 80; -*-

#+TITLE: Hacking fslib

* Contributing

By far the easiest way to hack on fslib is to develop using Guix:

#+BEGIN_SRC bash
# Obtain the source code
cd /path/to/source-code
guix environment -l guix.scm
# In the new shell, run:
hall dist --execute && autoreconf -vif && ./configure && make check
#+END_SRC

You can now hack this project's files to your heart's content, whilst
testing them from your `guix environment' shell.

If you'd like to tidy the project again, but retain the ability to test the
project from the commandline, simply run:

#+BEGIN_SRC bash
./hall clean --execute
#+END_SRC

** Manual dependency installation

If you do not yet use  Guix, you will have to install this project's
dependencies manually:

- GNU Make (the system package is called ~make~)
- GNU Autoconf (the system package is called ~autoconf~)
- GNU Automake (the system package is called ~automake~)
- pkg-config (the system package is called ~pkg-config~)
- Texinfo (often the system package is called ~texinfo~)
- guile-hall (providing the ~hall~ command)
- GNU Guile 3.x.y

Once those dependencies are installed you can run:

#+BEGIN_SRC bash
hall dist -x && autoreconf -vif && ./configure && make check
#+END_SRC
